Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Overhead (computing)</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Overhead_(computing)"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/ext.pygments.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Overhead_computing rootpage-Overhead_computing skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Overhead (computing)</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<p class="mw-empty-elt">
</p>
<style data-mw-deduplicate="TemplateStyles:r1305433154">
/* start https://en.wikipedia.org/ */


.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}@media print{body.ns-0 .mw-parser-output .ambox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style>
<p><b>Overhead</b> in computer systems consists of shared functions that benefit all users or processes but are not directly attributable to any specific task. It is thus similar to overhead in organizations. Computer system overhead shows up as slower processing, less memory, less storage capacity, less network bandwidth, or bigger latency than would be expected from reading the system specifications.<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> It is a special case of <a href="Engineering_overhead" class="mw-redirect" title="Engineering overhead">engineering overhead</a>. Overhead can be a deciding factor in software design, with regard to structure, error correction, and feature inclusion. Examples of computing overhead may be found in <a href="Object-oriented_programming" title="Object-oriented programming">object-oriented programming</a> (OOP), <a href="Functional_programming" title="Functional programming">functional programming</a>, data transfer, data structures, and <a href="File_systems" class="mw-redirect" title="File systems">file systems</a> on data storage devices.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Software_design">Software design</h2></div>
<div class="mw-heading mw-heading3"><h3 id="Choice_of_implementation">Choice of implementation</h3></div>
<p>A programmer/software engineer may have a choice of several <a href="Algorithm" title="Algorithm">algorithms</a>, <a href="Encoding" class="mw-redirect" title="Encoding">encodings</a>, <a href="Data_type" title="Data type">data types</a> or <a href="Data_structure" title="Data structure">data structures</a>, each of which have known characteristics. When choosing among them, their respective overhead should also be considered.
</p>
<div class="mw-heading mw-heading3"><h3 id="Tradeoffs">Tradeoffs</h3></div>
<p>In <a href="Software_engineering" title="Software engineering">software engineering</a>, overhead can influence the decision whether or not to include features in new products, or indeed whether to fix bugs. A feature that has a high overhead may not be included&nbsp;– or needs a big financial incentive to do so. Often, even though software providers are well aware of bugs in their products, the payoff of fixing them is not worth the reward, because of the overhead.
</p><p>For example, an <a href="Implicit_data_structure" title="Implicit data structure">implicit data structure</a> or <a href="Succinct_data_structure" title="Succinct data structure">succinct data structure</a> may provide low space overhead, but at the cost of slow performance (space/time tradeoff).
</p>
<div class="mw-heading mw-heading3"><h3 id="Run-time_complexity_of_software">Run-time complexity of software</h3></div>
<p>Algorithmic complexity is generally specified using <a href="Big_O_notation" title="Big O notation">Big O notation</a>. This makes no comment on how long something takes to run or how much memory it uses, but how its increase depends on the size of the input. Overhead is <i>deliberately</i> not part of this calculation, since it varies from one machine to another, whereas the fundamental running time of an algorithm does not.
</p><p>This should be contrasted with <a href="Algorithmic_efficiency" title="Algorithmic efficiency">algorithmic efficiency</a>, which takes into account all kinds of resources&nbsp;– a combination (though not a trivial one) of complexity and overhead.
</p>
<div class="mw-heading mw-heading2"><h2 id="Examples">Examples</h2></div>
<div class="mw-heading mw-heading3"><h3 id="Computer_programming_(run-time_and_computational_overhead)">Computer programming (run-time and computational overhead)</h3></div>
<p>Invoking a <a href="Function_(computer_science)" class="mw-redirect" title="Function (computer science)">function</a> introduces a small run-time overhead.<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> Sometimes the compiler can <a href="Compiler_optimization" class="mw-redirect" title="Compiler optimization">minimize</a> this overhead by <a href="Inlining" class="mw-redirect" title="Inlining">inlining</a> some of these <a href="Function_call" class="mw-redirect" title="Function call">function calls</a>.<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="CPU_caches">CPU caches</h3></div>
<p>In a <a href="CPU_cache" title="CPU cache">CPU cache</a>, the "cache size" (or <b>capacity</b>) refers to how much data a <i>cache</i> stores. For instance, a "4&nbsp;KB cache" is a cache that holds 4&nbsp;KB of data. The "4&nbsp;KB" in this example excludes <a href="Overhead_bit" title="Overhead bit">overhead bits</a> such as frame, address, and tag information.<sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="Communications_(data_transfer_overhead)">Communications (data transfer overhead)</h3></div>
<p>Reliably sending a <a href="Payload_(computing)" title="Payload (computing)">payload</a> of data over a communications network requires sending more than just the payload itself. It also involves sending various control and signalling data (<a href="Transmission_Control_Protocol" title="Transmission Control Protocol">TCP</a>) required to reach the destination. This creates a so-called <b>protocol overhead</b> as the additional data does not contribute to the intrinsic meaning of the message.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup>
</p><p>In <a href="Telephony" title="Telephony">telephony</a>, number dialing and <a href="Call_set-up_time" class="mw-redirect" title="Call set-up time">call set-up time</a> are overheads. In two-way (but <a href="Half-duplex" class="mw-redirect" title="Half-duplex">half-duplex</a>) radios, the use of "over" and other signaling needed to avoid <a href="Contention_(telecommunications)" title="Contention (telecommunications)">collisions</a> is an overhead.
</p><p>Protocol overhead can be expressed as a percentage of non-application <a href="Byte" title="Byte">bytes</a> (protocol and <a href="Frame_synchronization" title="Frame synchronization">frame synchronization</a>) divided by the total number of bytes in the message.
</p>
<div class="mw-heading mw-heading3"><h3 id="Encodings_and_data_structures_(size_overhead)">Encodings and data structures (size overhead)</h3></div>
<p>The <a href="Encoding" class="mw-redirect" title="Encoding">encoding</a> of information and data introduces overhead too. The date and time <i>"2011-07-12 07:18:47"</i> can be expressed as <a href="Unix_time" title="Unix time">Unix time</a> with the 32-bit <a href="Signedness" title="Signedness">signed</a> <a href="Integer" title="Integer">integer</a> <code>1310447927</code>, consuming only 4 bytes. Represented as <a href="ISO_8601" title="ISO 8601">ISO 8601</a> formatted <a href="UTF-8" title="UTF-8">UTF-8</a> encoded <a href="String_literal" title="String literal">string</a> <code>2011-07-12 07:18:47</code> the date would consume 19 bytes, a size overhead of 375% over the binary integer representation. As <a href="XML" title="XML">XML</a> this date can be written as follows with an overhead of 218 characters, while adding the semantic context that it is a CHANGEDATE with index 1.
</p>
<div class="mw-highlight mw-highlight-lang-xml mw-content-ltr" dir="ltr"><pre><span class="cp">&lt;?xml version="1.0" encoding="UTF-8"?&gt;</span>
<span class="nt">&lt;datetime</span><span class="w"> </span><span class="na">qualifier=</span><span class="s">"changedate"</span><span class="w"> </span><span class="na">index=</span><span class="s">"1"</span><span class="nt">&gt;</span>
<span class="w"> </span><span class="nt">&lt;year&gt;</span>2011<span class="nt">&lt;/year&gt;</span>
<span class="w"> </span><span class="nt">&lt;month&gt;</span>07<span class="nt">&lt;/month&gt;</span>
<span class="w"> </span><span class="nt">&lt;day&gt;</span>12<span class="nt">&lt;/day&gt;</span>
<span class="w"> </span><span class="nt">&lt;hour&gt;</span>07<span class="nt">&lt;/hour&gt;</span>
<span class="w"> </span><span class="nt">&lt;minute&gt;</span>18<span class="nt">&lt;/minute&gt;</span>
<span class="w"> </span><span class="nt">&lt;second&gt;</span>47<span class="nt">&lt;/second&gt;</span>
<span class="nt">&lt;/datetime&gt;</span>
</pre></div>
<p>The 349 bytes, resulting from the UTF-8 encoded XML, correlates to a size overhead of 8625% over the original integer representation.
</p>
<div class="mw-heading mw-heading3"><h3 id="File_systems">File systems</h3></div>
<p>Besides the files themselves, computer <a href="File_system" title="File system">file systems</a> take a portion of the space to store directory names and listings, file names, files' sector locations, attributes such as the date and time of the last modification and creation, how the files are <a href="File_fragmentation" class="mw-redirect" title="File fragmentation">fragmented</a>, written and free parts of the space, and a <a href="Journaling_file_system" title="Journaling file system">journal</a> on some file systems.
</p><p>Many small files create more overhead than a low number of large files.
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Slack_space" class="mw-redirect" title="Slack space">Slack space</a></li>
<li><a href="Rule_of_least_power" title="Rule of least power">Rule of least power</a></li>
<li><a href="Universal_Turing_machine" title="Universal Turing machine">Universal Turing machine</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */


.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}


/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap"><ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */


.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}


/* end https://en.wikipedia.org/ */
</style><cite id="CITEREFDenning2003" class="citation book cs1">Denning, Peter (January 2003). "Overhead". <a rel="nofollow" class="external text" href="https://dl.acm.org/doi/abs/10.5555/1074100.1074668"><i>Encyclopedia of Computer Science</i></a>. John Wiley and Sons. pp.&nbsp;<span class="nowrap">1341–</span>1343. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>978-0-470-86412-8</bdi>.</cite></span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://learn.microsoft.com/en-us/cpp/cpp/inline-functions-cpp">"Inline functions (C++)"</a>. <i>Microsoft Learn</i>. Microsoft. 22 January 2024<span class="reference-accessdate">. Retrieved <span class="nowrap">22 March</span> 2024</span>.</cite></span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-3">^</a></b></span> <span class="reference-text"><cite id="CITEREFMahaffey2019" class="citation web cs1">Mahaffey, Terry (24 July 2019). <a rel="nofollow" class="external text" href="https://devblogs.microsoft.com/cppblog/inlining-decisions-in-visual-studio/">"Inlining Decisions in Visual Studio"</a>. <i>C++ Team Blog</i>. Microsoft.</cite></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><cite id="CITEREFSorin2009" class="citation web cs1">Sorin, Daniel J. (2009). <a rel="nofollow" class="external text" href="http://people.ee.duke.edu/~sorin/prior-courses/ece152-spring2009/lectures/6.1.3-caches.pdf">"Caches and Memory Hierarchies"</a> <span class="cs1-format">(PDF)</span><span class="reference-accessdate">. Retrieved <span class="nowrap">March 13,</span> 2019</span>.</cite> Presentation for course in Computer Architecture.</span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://msdn2.microsoft.com/en-us/library/ms997599.aspx">Common Performance Issues in Network Applications Part 1: Interactive Applications</a>, Windows XP Technical Articles, Microsoft</span>
</li>
<li id="cite_note-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-6">^</a></b></span> <span class="reference-text"><a rel="nofollow" class="external text" href="http://www.sonic.net/support/docs/ip-atm.overhead.pdf">Protocol Overhead in IP/ATM Networks</a>, Minnesota Supercomputer Center</span>
</li>
</ol></div></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2024-12-30" href="https://en.wikipedia.org/wiki/?title=Overhead_(computing)&amp;oldid=1266206225">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>